查看原文
其他

USC学姐经验分享| 在Snapchat做Software Engineer是怎样的体验?

2017-08-18 硅谷IT黄埔军校 来Offer网




这家公司招聘有什么特点?

企业文化怎么样,待遇好吗?

入职后如何适应环境,快速升职加薪?





学长学姐加入

来Coder校园码农俱乐部

亲授求职秘笈

指导你跨过

学习和求职中的艰难险阻!



USC



USC来Coder Club

学长学姐私享会


Doudou2016年五月毕业于USC CS Master,现为Snap Inc Growth Team Software Developer, 主要从事Snapchat App iOS开发。



——学姐做客USC来Coder Club

为学弟学妹指点迷津




Club小助手:学姐所在的这家公司对同学们可以说是相当熟悉了,不少校友也把它设定为求职目标之一。那么请问学姐,Snap的面试会重点考察什么知识和技术?有没有不同于其他公司的特殊之处


Doudou:在面试考察的知识技能方面,Snap和其他公司的差别不是很大,主要还是算法题和对primamy language语言特性的了解。


在后几轮面试中,New Grad有可能会碰到有关System Design,但几率不高。如果是有1-2年工作经验的Candidate,System Design就是必考知识点了。



Snap是一家年轻的科技公司,面试官对应聘者的Personality非常看重,要求员工要工作勤奋,保持Open Mind。


因此和其他技术公司相比,Snap在面试中格外注重考察Communication Skills,具体表现在面试时间长(1个小时)且Behavioral Question相对更多,比如此前的项目经历等。


由于面试官更爱聊,面试时间也充裕,建议同学们注意提高自己的沟通能力,对自己写在简历上的Project,一定要懂得如何介绍,并突出自己Problem Solving的能力。



在电面环节,Snap是用Google Hangout的Video Call进行的,更喜欢这种面对面的交流形式。


而在Onsite阶段,应聘者则被要求现场写出Bug Free的Code,并且是在真机上调试,不使用白板。这对很多同学来说也是不小的挑战。



Club小助手:看来面试的难度的确不小!那么New Grad应该怎样争取Snap的面试机会?需要准备到什么程度才可以去申请该公司的职位呢?


Doudou:Snap非常看重应聘者的实习经历和名校背景,尤其是有含金量的长期实习,对拿到面试是很大的加分项。


如果你没有实习经验,那么内推就显得至关重要了。内推人最好是认识、了解你的人。


你也可以在Linkedin直接发站内信给公司Recruiter,不过应届生的履历要打动他们还是比较有难度的。



和其他大公司一样,Snap有比较完善的内部推荐制度。公司对Target School有专门负责Campus Recruiter,在有New Grad的招聘名额时,他们会通过多种渠道reach out,内推是其中重要的方法之一。


所以如果想要进Snap,平时可以多联系学长姐,抓住宝贵的内推机会。靠海投简历,得到面试机会的概率是很低的。



对于什么时候可以开始求职面试,我觉得只能参考个人经验。自身准备分为技术和软实力两个方面。


技术上,又可分为简历质量和面试能力。USC的CS专业经典课程如571,都提供了做Project的机会,一定要好好上课,用这些项目经历武装自己的简历。


而面试能力很大程度上要靠勤做题来提高,同时做题也是为了培养Problem Solving能力,质量高于数量,要多多总结和反思,并学会如何阐述自己的解题思路。


我个人从15年1月开始在来Offer面试系统班学习,后进入小班,半年后拿到了Snap的Offer。我认为去面试的时候已经准备得非常充分:刷过了所有面经,对公司的背景和产品也在知乎、QUORA上了解得比较透彻。



至于软实力的准备,个人觉得自我介绍一定要设计好,第一印象非常重要。建议大家把自我介绍的内容写下来多读多练,提炼内容和闪光点。


刚才也说过,Snap面试时Behavioral Question相对较多。这些问题很重要,但可能比较General。


我觉得大家首先要对自己做过的Project各方面都非常熟悉,能从宏观到细节地全面介绍这个项目,并充分展现自己发挥的作用。



Club小助手:下一个问题也是很多同学关注的,请问在招聘时是否就有web developer, mobile developer, frontend/backend developer之类的职位划分呢?


Doudou:在这点上每个公司都不一样。我司对SWE都是General Hire,只有Data领域是单独划分的一个Track,工作中会涉及AB test的设计和评估,需要专门学习。


因为公司的核心产品是App, 因此Mobile相关职位较多,前端工程师需求量最大。我觉得Mobile Develop现在在各公司都很热门,大家如果感兴趣,可以考虑往这个方向发展。


相比较而言,Back-end工程师需求量最少,公司更青睐有经验的Candidate。




Club小助手:听说Snap的工作压力挺大的,不知道学姐一般上下班都是什么时间?加班多吗?当工作任务超出能力范围的时候该怎么办?



Doudou:Snap和相对成熟的大科技公司相比,工作强度还是大了不少,工作时间也比较长,工作压力还是很大的。



这样的工作节奏,可能会让很多New Grad不大适应,因为公司希望新来的员工可以快速进入状态并做出像样的东西来,但与此同时Mentor通常又很忙,不一定能很好地“照顾”你。


超出能力范围的工作任务是肯定会遇到的,为了弥补自己在技术和对任务的理解上与同事们的差距,多付出一些时间精力也是必要的。


因此,New Grad一定要自己注意学习遇到困难,要积极和他人沟通、及时求教,弥补和同事们之间的差距。






Club小助手:对于New Grad如何适应节奏快、压力大的工作环境,学姐有什么建议呢?在正式上班前可以做怎样的准备工作?


Doudou:由于是General Hire,新员工不会被提前通知做什么track, 而公司对新人又有很高的期待值,所以New Grad要面临的挑战是很大的。


我刚入职Snap的时候,还从来没做过iOS开发相关的工作,就被要求在10天内配环境接触新的语言,并做两个小的feature。


面对这样有挑战性的任务,需要自己去寻找和获取资源,包括学习公司内部的design doc,参照同事的PR进行模仿等


后来我体悟到,这即是工作任务,同时也是压力测试的一部分,完成的好会很加分。



除了积极自学以外,我觉得应届生在心态和处事方法上也需要提升自我。


首先是脸皮要厚,要主动,不要害怕做的一些事情是不合时宜的。


记得我刚进组时还是相对比较腼腆的,有问题也不知道应该向谁请教。而此后我们组新加入了一位曾在Senior级别任职的工程师,他在入职后第一时间就约组内所有同事one-on-one,了解大家都在做什么,增进感情。这样的做法我觉得是非常值得大家学习借鉴的。


另一方面,要快速调整好心态,实现从学生到社会人的转变。第一份工作选择适合自己职业发展的环境更重要,在选择接受Offer前,要对公司有全面深入的了解,不要盲目迷信公司的名气或薪水。



说到入职前的准备,我觉得也更多是在考虑问题的方式上吧!在学校时目标仅仅是为了做出题目,而工作中遇到的问题往往更模糊、更复杂。


这就要求大家在学校时就要试着转变思路,带着Problem Solving的心态去做题在刷题中训练自己的逻辑思维能力。


而且刷题所强调的一些东西对未来的实际工作也是有意义的,不只针对面试平时刷题训练时,哪怕是细小到怎样写好注释,怎样提升readability都很重要,对未来适应工作环境的要求都很有帮助。



不仅仅是在Snap,其实我们大部分人都很难预估之后工作的domain;一些语言specific的东西也不应该成为无法适应工作的借口。


相反,无论到了什么时候都要坚持自主学习,并在实际工作中,学会从分析和条理化Requirements入手,提升自己解决问题的能力。



Club小助手:学姐的建议非常好!既然谈到了工作环境,学姐可否分享一些关于Snap工作团队和企业文化的内容呢?同事们关系如何?一个项目有时候会需要好几个小组的协同工作,这时怎样跟其他人员配合?


Doudou:目前Snap中国工程师很多同事们很Nice,会互相照应,但缺点就是会阻碍你培养英文交流能力。虽然工作很辛苦,但我觉得组里包括整个公司的气氛很不错

     

工作中的协同合作是很重要的。每个人都要对feature或project有整体的了解,明确自己这部分的目标和别人的目标,积极对接,有问题主动reach out。能协助别人的地方,也要多帮助他人。


希望大家记得一点,Implementation只是工作的一部分,甚至是很小的一部分。达成一个目标,是技术、合作、沟通等多个因素共同作用的结果。




Club小助手:大家对科技公司的等级考核制度也很好奇,学姐能简单介绍一下吗?该如何让自己的获得比较高的评价呢?

Doudou:Snap的员工等级是从Level 1开始的,定期有Review。公司对每个Level的工程师会有不同要求,新员工需要迅速完成Ramp-up,并应对越来越复杂的工作内容。


每个公司都有对Performance的考察,怎样提升自己的Perf.也是大家需要认真琢磨的。

     

首先就是要把握每一次跟Manager one-on-one的机会,不夸张的说,这是drive自己的career path的良机。


和Manager交流是有技巧的。首先要清楚地汇报自己的工作进度,做了就要说出来,不要谦虚;同时,也让老板了解到你是否需要更多的帮助。



如果对自己的工作——甚至组里、公司里哪怕超出你自己工作范畴的事情——有想法和建议,一定要积极表达出来,表现出自己一直在思考。


另外,要正视manager给你的feedback和别的同事提出的意见,并将自己的改变体现在以后的工作中,这对提升Performance有很大帮助。

 

总之大家要时刻清晰地认识到工作的目的,即我为什么要做这件事,impact有多大,而不只是把这个事情做完就算完事儿了。



Club小助手:学姐讲得太好了!今天的分享就快要结束了,最后问一个大家最关心的问题——Snap什么时候开始启动秋季招聘呢?今年招的人多吗?


Doudou:秋招已经开始啦!上两个月我已收到Campus Recruiter的邮件,请大家推荐优秀的Candidate。


最近来公司onsite面试的同学也不少。虽然和很多大公司相比headcount不算很多,但仍然值得尝试!



要加入

USC,UC,PSU,NYU,CMU

普度大学,哥伦比亚,西北大学

湾区或芝加哥

 来Coder Club

请添加Club小助手微信

并说明你来自哪所学校或地区



不属于以上学校?

没关系,

来Coder Club可能

正向你的母校赶来!


如果你想在母校组织码农社群活动

帮助更多Coders

请发送简历至

aileen@laioffer.com

申请成为来Offer校园大使

(在微信后台回复“校园大使”

了解职位福利和任务)

招聘 | 来Offer校园Geek Club掌门人就是你了!



来Offer课程介绍

(点击图片即可查看)

—咨询课程—



求职,你只需要一门课程!



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存